package cn.iocoder.yudao.module.lfd.controller.admin.schedule.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.time.LocalTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.*;

/**
* 排班 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class ScheduleBaseVO {

    @Schema(description = "店铺", example = "15119")
    private Long shopId;

    @Schema(description = "名称", example = "赵六")
    private String nickName;

    @Schema(description = "理发师id", example = "16130")
    private Long barberId;

    @Schema(description = "星期")
    private String week;

    @Schema(description = "状态", example = "1")
    private String status;

    @Schema(description = "开始上班")
    @DateTimeFormat(pattern = FORMAT_HOUR_MINUTE_SECOND)
    private LocalTime startWork;

    @Schema(description = "下班时间")
    @DateTimeFormat(pattern = FORMAT_HOUR_MINUTE_SECOND)
    private LocalTime endWork;

    @Schema(description = "加班开始")
    @DateTimeFormat(pattern = FORMAT_HOUR_MINUTE_SECOND)
    private LocalTime startOvertime;

    @Schema(description = "结束加班")
    @DateTimeFormat(pattern = FORMAT_HOUR_MINUTE_SECOND)
    private LocalTime endOvertime;

    @Schema(description = "总加班时长")
    private Integer totalOvertime;

    @Schema(description = "排班日")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
    private LocalDate scheduleDate;

}
